// 1、发送请求获取数据
// 2、点击轮播图  预览大图
      // 1、给轮播图绑定点击事件
      // 2、调用小程序的api previewImage
// 3、点击加入购物车
      // 1、先绑定点击事件
      // 2、获取缓存中的购物车数据  数组格式
      // 3、先判断  当前商品是否存在于购物车里面
      // 4、已经存在 修改商品数据  执行购物车数量 ++ 重新把购物车数组 填回缓存中
      // 5、不存在于购物车的数组中，直接给购物车数组添加一个新元素  新元素 带上购买数量属性 num 新把购物车数组 填回缓存中
      // 6、弹出提示
/*
4、商品收藏
  1、页面 onshow 的时候  加载缓存中的商品收藏数据
  2、判断当前商品是不是被收藏
    1、改变页面图标  文字
    2、不是就不用修改
  3、点击商品收藏按钮
    1、判断该商品是否存在于缓存数组中
    2、已经存在 把该商品删除掉
    3、不存在 添加到收藏数组中，也存到缓存中

*/

import {request} from "../../request/index.js";
import regeneratorRuntime from '../../lib/runtime/runtime';

Page({
  data: {
    goods_id:'',  
    goodsObj:{},//商品信息
    collectStatus:true,
    urls:[],
  },

  onShow(){
    // 1、获取缓存中商品收藏的数组
    let collect = wx.getStorageSync('collect')||[];
    // 2、判断当前商品是否被收藏
    console.log('collect***********************',collect);
    // let isCollect = collect.some(v=>v.goods_id==)
  },

  onLoad: function (options) {
    console.log('options',options)
    this.setData({
      goods_id:options.goods_id
    })
    this.getGoodsDetail(this.data.goods_id);//发送请求获取商品详情数据
  },

  //获取商品详情数据
  async getGoodsDetail(goods_id){
    const res = await request({
      url:'/goods/detail',
      data:{
        goods_id
      }
    })
    this.setData({
      goodsObj:res,
    })
    console.log('goodsObj',this.data.goodsObj)
  },

  //点击轮播图  放大预览
  previewImage(e){
    // 1、先构造要预览的图片数组  
    var url = e.currentTarget.dataset.url;
    var picArr = this.data.goodsObj.pics;
    var urls =[];
    for(var i = 0;i<picArr.length;i++){
        urls.push(picArr[i].pics_mid);
    } 
    this.setData({
      urls:urls
    })
    wx.previewImage({
      current:url, // 当前显示图片的http链接
      urls:this.data.urls
    })
  },

  //收藏
  collect(){
    const collectStatus = !this.data.collectStatus;
    this.setData({
      collectStatus
    })
    if(!collectStatus){
      wx.showToast({
        title:'收藏成功',
        icon:'success'
      })
    }else{
      wx.showToast({
        title:'取消收藏成功',
        icon:'success'
      })
    }
  },

  //联系客服
  custom(){
    wx.showToast({
      title:'联系客服成功',
      icon:'success'
    })
  },
  //分享
  share(){
    wx.showToast({
      title:'分享成功',
      icon:'success'
    })
  },
  //点击加入 购物车
  cart(){
    // 1、获取缓存中的购物车  数组
    let cart = wx.getStorageSync('cart')||[];
    // 2、判断 商品对象是否存在于购物车数组中
    let index = cart.findIndex(v=>v.goods_id===this.data.goodsObj.goods_id);
    if(index === -1){
      //3\不存在  第一次添加  往对象中添加新的属性
      this.data.goodsObj.num=1;
      this.data.goodsObj.checked=true;
      cart.push(this.data.goodsObj);
    }else{
      //4已经存在购物车数据  执行 num++
      cart[index].num++;
    }
      // 5\把购物车重新添加到缓存中
      wx.setStorageSync('cart', cart);
      // 6弹窗提示
      wx.showToast({
        title:'添加购物车成功',
        icon:'success',
        // true 防止用户  手抖 疯狂点击按钮
        mask:true
      })
  },
   //立即购买
   buy(){
    wx.showToast({
      title:'立即购买成功',
      icon:'success'
    })
},

})